package com.starry.module.system.api.menu.domain.vo;

import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.List;

/**
 * 当前登陆用户的菜单
 *
 * @Author xiaoke
 */
@Schema(description = "LoginRouterVo，当前登陆用户的菜单")
@Data
public class LoginRouterVo {
    /**
     * 主键
     */
    @Schema(description = "主键")
    private Long id;

    /**
     * 父id
     */
    @Schema(description = "父id")
    private Long pid;
    /**
     * 菜单名
     */
    @Schema(description = "菜单名")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String name;
    /**
     * 路由地址
     */
    @Schema(description = "路由地址")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String path;
    /**
     * 菜单元信息
     */
    private LoginRouterMetaVo meta;
    /**
     * 子菜单
     */
    @Schema(description = "子菜单")
    @JsonInclude(JsonInclude.Include.NON_EMPTY)
    private List<LoginRouterVo> children;
}
